#ifndef BTFORM_H
#define BTFORM_H

#include <QWidget>
#include <QMouseEvent>
#include <QPropertyAnimation>


namespace Ui {
class BtForm;
}

class BtForm : public QWidget
{
    Q_OBJECT

public:
    explicit BtForm(QWidget *parent = nullptr);
    ~BtForm();

    //设置这个btform里面的图标，文本，还有对应stackedWidget里面的id
    void  setIconAndText(const QString& btIcon, const QString& btText, int pageid);

    int getPageId() const;  //获得stackedWidget的pageid
    void clearBackGround();  //清除其他未选中的颜色
    //4个长方形的动画效果展示，因为在btForm类构造函数中，是直接把4个长方形的盒子给隐藏了，只用show就可以展示了
    void showAnimal(bool isTrue);

signals:
    void btClick(int id);  //当前btform对应的pageid （stackwidget中的page）

protected:
    void  mousePressEvent(QMouseEvent* event);


private:
    Ui::BtForm *ui;

    int pageId;  // stackedWidget中的pageid，一个BtFrom对应了一个stackedWidget里面的下标

    //设置动画效果，给4个长方形设置的那种动画效果
    QPropertyAnimation* line1Animal;
    QPropertyAnimation* line2Animal;
    QPropertyAnimation* line3Animal;
    QPropertyAnimation* line4Animal;
};

#endif // BTFORM_H








